STM32 电机控制 SDK MCFW-6.4.1
用于构建驱动 STM32 的 PMSM 电机应用的软件开发套件
FOC 固件错误

前述:开环描述与使用 ↤|目录 |↦ 下一页:运动控制功能

本章将解释使用MCSDK时可能出现的各种固件错误的原因和解决方案。

FOC 持续时间误差

新的PWM占空比必须计算,且必须在下一个PWM周期开始前计算。如果占空比设置得太晚,无法在下一个PWM周期中考虑,则会出现FOC持续时间误差。

FOC持续时间错误的原因:

1- 执行率太低。对于低电感电机,可以在保持高PWM频率的同时提高FOC执行速率以节省CPU负载。请检查并提高MCWB“当前感测”窗口中的调节器执行时间参数值。

2- PWM频率过高。请在MCWB的PWMGenerate窗口配置标签页的PWM频率部分检查并降低该数值。

3- IDE未针对速度进行优化。请确保您的C编译器项目选项设置为高速优化水平。

电流过载

这是一种外部硬件保护机制,用于GenerateBREAKIN事件。当达到阈值时,PWM通过中断被关闭。

电流过载误差的原因:

1- 当前传感拓扑不正确。请在MCWB的“当前传感”窗口中检查并选择与您的设计相符的相应电流传感拓扑配置。

2- 电流限制太低。请在MCWB的“电流检测”窗口的“过流保护”部分检查并调整电流传感器参数。

在这个例子中,在START过程的第二阶段,由于PWM频率过低(5kHz)而发生了过电流

3- PWM过低,请检查并提高PWM频率,进入MCWB的PWMGenerate窗口配置部分。

4- 当前坡道选择不当。请在MCWB“速度感测”窗口“无传感器启动参数”标签的“启动配置文件”部分检查并降低当前相位配置的目标。

5- 速度参考太低。请在MCWB“速度感应”窗口的“无传感器启动参数”标签页“启动配置文件”部分中,检查并提高相位配置的速度目标,以匹配同一标签页“启动出口条件”部分的“启动速度”阈值。

6- 存在引脚映射错误:两脚被交换用于电流读数。请检查您的设计,确保当前读数输入没有错误。

启动失败

收敛:STO PLL 或 STO CORDIC 估计的电转子转速需在虚拟速度传感器预期的 N 倍范围内。当达到最低速度时,会检查收敛性,确保在分配给启动的时间内退出“启动”状态。如果在连续N个周期内,估计速度并不总是在该区间内,则该误差会提高。

启动失败错误的原因:

1- 最低启动速度过高。请检查并降低MCWB“速度感应”窗口中“无传感器启动参数”标签“启动退出条件”部分的“启动速度阈值”参数值。

2- 使用PLL测得的速度不可靠。请在MCWB“速度感应”窗口的“无传感器启动参数”标签的“启动退出条件”部分中,检查并降低“连续正确测量”值。在这个例子(3)中,使用PLL测得的最后速度低于最低启动速度。

3- 比较速度的范围过窄。请通过降低和/或增加MCWB“速度感应”窗口“无传感器启动参数”标签“启动条件”部分中“速度带宽容差估计极限”参数的下限和/或增加上限来检查并增加距离。

4- 启动阶段的最后一个坡道太低。请在MCWB“无传感器启动参数”标签页的“启动配置文件”部分,检查并降低当前相位配置的目标。

5- 启动时间太短。请在MCWB“无传感器启动参数”标签页的“启动配置文件”部分,检查并增加不同阶段所用“持续时间”参数。

6- 负载过大,请在启动阶段减少或调整负载。过载会阻碍电机达到成功启动所需的最低转速。要解决这个问题,可以在启动阶段尝试降低负载或改变负载配置。

启动失败发生在状态机切换过程中。

闭环:在切换状态预定时间结束时,虚拟速度传感器必须处于最大应用速度定义的可靠性范围内。切换状态必须在转速阶段发生。当循环关闭时,我们就退出切换状态,转速结束。

1- 最低启动速度过高。请在MCWB“速度感应”窗口的“无传感器启动参数”标签页的“启动退出条件”部分中,检查并降低“启动速度阈值”参数的值。在示例4中,启动成功,但电机未能在“切换”阶段停留足够长时间以完成加速,可能是由于启动速度阈值设置过高所致。

2- 切换持续时间太长。请在MCWB速度感测窗口的“无传感器启动参数”标签页“启动退出条件”部分检查并降低“持续时间”参数的值。

3- VSS速度不在授权速度范围内(0到最大)。请在速度感应窗口的无传感器启动参数标签“启动配置文件”中检查并降低速度目标参数的值,以确保其低于MCWB电机窗口机械参数部分的最大应用速度参数。

4- 加速阶段时间太短。请在MCWB的速度感应窗口“无传感器启动参数”标签“启动配置文件”中检查并提高“持续时间”参数的值。

电压误差

状态机启动时发生了电压不足的错误。

电源板的值低于预期值。

请检查电源板是否正确供电,或所供电压是否合适。

过电压误差

电源板的数值高于期望值。

第一阶段电流过高,请检查并降低启动参数部分的值,将传感器无启动参数的部分输入MCWB的速度感应窗口,以避免超过电源板的限制。

过热误差

在状态机的启动和运行过程中发生过热错误。

板子温度比预期高。三相供电的电流在电机不转动的情况下不断增加。这很可能是三相晶体管开关命令管理错误的结果。

过热错误的原因:

1- 电流感应配置错误,请在MCWB的电流感测窗口中检查并选择与您的设计相符的正确配置。

2- 缺少与消防局相关信息。请检查固件通过输入信号请求的信息是否连接良好(电流读数、电压母线、霍尔传感器或编码器传感器等)。

速度反馈误差

在状态机运行期间发生了速度反馈错误。

速度可靠性:在高频任务中,转子转速存储在大小为X的缓冲区中。在中频任务中,计算缓冲值的方差。如果方差在MCWB设定的范围内,速度是可靠的。如果方差不在X倍范围内,速度就不可靠。在状态运行期间,如果STO测量到的平均速度不可靠,就会发生速度反馈错误。

速度反馈误差的原因:

1- 通过STO PLL测量的速度在切换阶段不可靠。请检查并调整以下参数:降低方差阈值,降低速度环路参数的平均速度深度值,并提高最大数值。故障参数前错误,出现在MCWB速度感测窗口主传感器标签页的观察者+无传感器部分。

2- 在启动时,由于反电动势估计不当,斜坡测量出现振荡。请检查并调整PLL增益,因为G2太高了。通过改变MCWB中Observer和PLL部分的速度感测窗口中的G2值,以降低G2以最小化噪声造成的测量误差。

3- 请在MCWB的速度感测窗口中检查观察者和PLL部分的P和I参数,以获取速度调节器的Kp和Ki参数。

软件错误

MCSDK 固件的执行导致处理器出现硬性故障。

软件错误的原因:

当发生硬故障异常时,MCSDK 固件已进入无限循环。请使用你的IDE来调试软件并找出该异常的原因。

前述:开环描述与使用 ↤|目录 |↦ 下一页:运动控制功能